from selenium import webdriver


class BrowserManager():
    '''
    浏览器处理
    '''

    def __init__(self, browseType):
        '''
        :param browseType: 浏览器类型
        '''
        self._browseType = browseType
        self._checkEnv()
        self._webdriver = None

    def _checkEnv(self):
        '''
        检测浏览器运行环境
        :return:
        '''
        print('检测浏览器类型')
        print('检测运行环境是否可以启动浏览器')

    def start(self):
        '''
        启动浏览器
        :return:
        '''
        print('启动浏览器')
        return self._getBrowse()

    def shutdown(self):
        '''
        关闭浏览器
        :return:
        '''
        print('关闭浏览器')
        self._getBrowse().quit()

    def __del__(self):
        self.shutdown()

    def _getBrowse(self):
        if not self._webdriver:
            print('new new browser')
            self._webdriver = getattr(webdriver, self._browseType)()
        return self._webdriver
